package com.lq.memo.service;

import com.lq.email.exception.MyException;
import com.lq.memo.entity.Memo;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * @program: memo
 * @description:
 * @author: LQ
 * @create: 2021-11-04 14:26
 */
@Service
public interface MemoService {

    /**
     * 获取所有备忘录
     * @return
     */
    List<Memo> getAllMemo();

    /**
     * 获取距今天前后的备忘录数据
     * @param beforeDate 今天前多少天
     * @param afterDate 今天后多少天
     * @return 备忘录列表
     */
    List<Memo> getMemoList(int beforeDate,int afterDate);

    /**
     * 根据日历获取备忘录
     * @param memo
     * @return
     */
    List<Memo> getMemoListByCalendar(Memo memo);

    /**
     * 获取需要提醒的备忘录
     * @param memoList
     * @return
     */
    void sendEmailMemo(List<Memo> memoList) throws MyException;

    /**
     * 保存或者修改memo
     * @param memo
     * @return
     */
    Integer saveOrUpdateMemo(Memo memo);

    /**
     * 设置提醒时间(times数组转数字)
     * @param memo
     */
    void setMemoRemindTimes(Memo memo);

    /**
     * 数字转数组
     * 设置提醒时间times
     * @param memo
     */
    void setMemoTimes(Memo memo);

}
